文件系统与目录结构

文件系统结构

Linux下的文件类型 :

例:查看文件类型

PWD

显示当前shell CWD的绝对路径 -P 显示真实物理路径 -L 显示连接路径(默认) basename :基名 dirname :目录名 例:显示当前工作目录 例: 获取/etc/sysconfig/的基名 例: 取/etc/sysconfig/的路径名

cd

使用绝对或相对路径: cd /home/wang/ cd home/wang cd ..: 切换至父目录
**cd ** 切换至当前用户主目录 **cd - **切换至以前的工作目录 例:切换到用户家目录 例:切换到父目录 例:切换到/etc/sysconfig目录下 例:切换到上一次所在的目录

ls

列出目录内容 例: 显示当前目录下所有文件 例: 显示目录内容的额外信息 或者 例: 递归显示目录内容 例:组合应用

stat

查看文件状态 例: 查看issue文件的状态,注意三个时间戳

通配符

touch

用来生成空文件,如果此文件存在,将刷新此文件的时间戳 例:创建空文件test.sh

cp

复制文件和目录 注意:cp是cp - i的别名 直接复制不在询问:\cp

常用选项:

练习题 每天将/etc/目录下所有文件,备份到/data独立的子目录下,并要求子目录格式为backupYYY-mm-dd,备份过程可见 创建/data/rootdir目录,并复制/root下所有文件到该目录内,要求保留原有权限 三种方法: 例:将/etc/issue文件复制到/data/下改名为issue.bak 例:复制文件/data/issue.bak并重命名为/data/issue.bak.1 例:文件夹不能复制到文件里面,会报错 cp - a : cp -v :保留过程 cp - R/r:递归处理,将指定目录下的所有文件与子目录一并处理; 例:复制/etc目录下所有文件及其子目录到当前目录,并重命名为etc_bak

MV

移动和重命名文件

用来对文件或目录重新命名,或者将文件从一个目录移到另一个目录中;可以用来将源文件移至一个目标文件中,或将一组文件移至一个目标目录中;如果目标文件不是目录文件,则源文件名(只能有一个)会变为此目标文件名,并覆盖己存在的同名文件。如果源文件和目标文件在同一个目录下,mv的作用就是改文件名。当目标文件是目录文件时,源文件或目录参数可以有多个,则所有的源文件都会被移至目标文件中。所有移到该目录下的文件都将保留以前的文件名。

注意事项:移动并不是复制,mv与cp的结果不同,mv好像文件“搬家”,文件个数并未增加。而cp对文件进行复制,文件个数增加了。

常用选项:

例:将 fstab文件移动到/tmp下,(本目录的fstab不在了) 例: 移动整个文件夹 例: 把rootdir文件夹名字重命名为dir

rm

删除

常用选项:

rm 是 rm-i 的别名,不再询问:\rm 例: 先清除垃圾文件,腾出磁盘空间:

rename

批量修改文件 例:把txt文件都加上bak后缀并备份下来 解译:找到所有以 f 开头的文件,发现有f 开头的txt文件,就替换成txt.bak

目录操作:

tree

显示目录树

常用选项:

例:查看/boot目录结构 tree - d:只显示目录不显示文件

mkdir

创建目录,文件夹

常用选项

例: 创建dir3 目录 mkdir - p:子目录和父目录一起创建 例:

rmdir

删除空目录

常用选项

例: 不能删空目录 rmdir - p : 递归删除父空目录 例: rm -r :递归删除目录树

索引节点

inode

包含文件系统所有文件列表 inode表结构: 目录: inode表: ** ls - i :可以看出节点编号**

cp和inode

rm和inode

mv和inode

硬链接

给同一个文件名起多个名称 例:

符号(或软)链接

例: 例: 把 /usr/sbin/apachectl文件在当前目录下创建软连接文件为apachectl

理论:硬链接和软链接的区别

2.1.本质:
硬:本质是同一个文件
软:本质不是同一个文件
2.跨分区
3.inode
4.链接数
5.文件夹
6.相对路径
7.删除原文件
8.文件类型 

file

确定文件内容

常用选项

file -b :不显示文件名称 例: file -L : 查看对应软链接对应文件的文件类型 例: